package com.ynkbny.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ynkbny.domain.FormulaConfiguration;
import com.ynkbny.domain.pojo.FormulaConfigurationArgumentVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author YY
* @description 针对表【formula_configuration(公式表)】的数据库操作Mapper
* @createDate 2023-09-04 20:28:57
* @Entity com.ynkbny.domain.FormulaConfiguration
*/
public interface FormulaConfigurationMapper extends BaseMapper<FormulaConfiguration> {

    /**
     * 添加公式
     * @author YY
     * @param formulaConfiguration FormulaConfiguration
     * @return boolean
     */
    boolean add(FormulaConfiguration formulaConfiguration);

    /**
     * 查询公式列表
     * @author YY
     * @param enterpriseCode 统一社会信用代码
     * @return List<FormulaConfigurationArgumentVO>
     */
    List<FormulaConfigurationArgumentVO> list(@Param("enterpriseCode") String enterpriseCode);

    /**
     * 通过idList查询公式列表
     * @author YY
     * @param list 公式id列表
     * @return List<FormulaConfigurationArgumentVO>
     */
    List<FormulaConfigurationArgumentVO> listByIdList(@Param("list") List<Integer> list);

    /**
     * 通过采集配置项idList查询公式列表
     * @author YY
     * @param list 采集配置项id列表
     * @return List<FormulaConfigurationArgumentVO>
     */
    List<FormulaConfigurationArgumentVO> listByDataCollectConfigureIdList(@Param("list") List<String> list);

    /**
     * 查询公式列表
     * @author YY
     * @param dataId 采集配置项id
     * @return List<FormulaConfigurationArgumentVO>
     */
    List<FormulaConfiguration> listByDataId(@Param("dataId") String dataId);


    /**
     * 递归查询公式列表
     * @author YY
     * @param dataId 采集配置项id
     * @return List<FormulaConfigurationArgumentVO>
     */
    // 递归查询公式列表

    List<FormulaConfiguration> recursiveListByDataId(@Param("dataId") String dataId);



}




